<?php

//////////////////////////////////////////////////////////////////////////////80
// Transfer Controller
//////////////////////////////////////////////////////////////////////////////80
// Copyright (c) Atheos & Liam Siira (Atheos.io), distributed as-is and without
// warranty under the modified License: MIT - Hippocratic 1.2: firstdonoharm.dev
// See [root]/license.md for more. This information must remain intact.
//////////////////////////////////////////////////////////////////////////////80
// Authors: Codiad Team, @Fluidbyte, Atheos Team, @hlsiira
//////////////////////////////////////////////////////////////////////////////80
require_once("class.transfer.php");

$type = Common::data("type");
$path = Common::data("path");

$path = Common::getWorkspacePath($path);

//////////////////////////////////////////////////////////////////////////////80
// Security Check
//////////////////////////////////////////////////////////////////////////////80
if (!Common::checkPath($path)) {
	Common::sendJSON("E430u"); die;
}

//////////////////////////////////////////////////////////////////////////////80
// Handle Action
//////////////////////////////////////////////////////////////////////////////80
$Transfer = new Transfer();
// $Filemanager->project = @$_SESSION['project']['path'];

$Transfer->root = WORKSPACE;

switch ($action) {
	//////////////////////////////////////////////////////////////////////////80
	// Download Files
	//////////////////////////////////////////////////////////////////////////80
	case 'download':
		$Transfer->download($path, $type);
		break;
	//////////////////////////////////////////////////////////////////////////80
	// Upload Files
	//////////////////////////////////////////////////////////////////////////80
	case 'upload':
		$Transfer->upload($path);
		break;
	//////////////////////////////////////////////////////////////////////////80
	// Default: Invalid Action
	//////////////////////////////////////////////////////////////////////////80
	default:
		Common::sendJSON("E401i");
		break;
}